import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Doctor {
    private int BinarySearch(int arr[], long tm){
        int s = 0 ; int e = 0;
        for(int i=0;i<arr.length;++i) e = Math.max(e,arr[i]);
        int rs = 0;
        while(s<=e){
            int m = s+(e-s)/2;
            long sm = 0;
            for(int i=0;i<arr.length;++i) sm += Math.min(arr[i],m);
            if(sm<=tm) {
                 rs = Math.max(rs,m); s = m+1;
            }
            else {
                e = m-1;
            }
        }
        return rs;
    }
    private void run() throws Exception {
        BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(bf.readLine());
        int n = Integer.parseInt(st.nextToken()); long m = Long.parseLong(st.nextToken());
        int arr [] = new int[n];
        st = new StringTokenizer(bf.readLine());
        long sm = 0;
        for(int i=0;i<n;++i) {
            arr[i] = Integer.parseInt(st.nextToken()); sm += arr[i];
        }
        if(m>sm) {
            System.out.println(-1);
        }
        else {
            int kx = BinarySearch(arr,m);
            for(int i=0;i<n;++i){
                m -= Math.min(arr[i],kx); arr[i] -= Math.min(arr[i],kx);
            }
            for(int i=0;i<n;++i){
                if(m==0){
                    for(int j=0;j<n;++j){
                        int k = (i+j)%n;
                        if(arr[k]!=0) System.out.print(k+1 + " ");
                    }
                    break;
                }
                else if(arr[i]!=0){
                    arr[i] -= 1; m -= 1;
                }
            }

        }
    }
    public static void main( String [] Args ) throws Exception {
        new Doctor().run();
    }
}